Skip to content
This repository has been archived by the owner on May 16, 2023. It is now read-only.

[meta] add support for k8s 1.16 #635

Merged
merged 14 commits into from
May 29, 2020
Merged

[meta] add support for k8s 1.16 #635

merged 14 commits into from
May 29, 2020

Conversation

jmlrt
Copy link
Member

@jmlrt jmlrt commented May 20, 2020

This PR add tests on K8S 1.16 using GKE

@jmlrt
Copy link
Member Author

jmlrt commented May 28, 2020

Elasticsearch upgrade test is failling on K8S 1.16 because Elasticsearch chart version < 7.4.0 used apps/v1beta2 API for StatefulSet (changed in #302) which was removed in K8S 1.16 (see CHANGELOG).

Elasticsearch upgrade test first install a 7.0.0-alpha1 chart, then upgrade it to last version.

Adding tests and support for K8S 1.16 requires that we update the upgrade test to check 7.4.0 to latest version upgrade instead of 7.0.0-alpha1 to latest version upgrade.

Eventually we could change the test only for K8S 1.16:

  • still testing 7.0.0-alpha1 -> latest upgrade for K8S 1.14 and 1.15
  • testing 7.4.0 -> latest upgrade for K8S 1.16

Copy link
Contributor

@elasticdog elasticdog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Makefile changes look good to me, but I had a couple of suggestions.

elasticsearch/examples/upgrade/README.md Outdated Show resolved Hide resolved
elasticsearch/examples/upgrade/Makefile Outdated Show resolved Hide resolved
Co-authored-by: Aaron Bull Schaefer <aaron@elasticdog.com>
@@ -40,3 +40,4 @@ APM_SERVER_SUITE:
KUBERNETES_VERSION:
- '1.14'
- '1.15'
- '1.16'
Copy link
Contributor

@Conky5 Conky5 May 29, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wish we could define the chart versions for upgrade testing here somehow so it is very clear what the test cases are, something like this

 - kubernetes_version: '1.14'
   upgrade_from_chart_version: '7.0.0-alpha1'
 - kubernetes_version: '1.15'
   upgrade_from_chart_version: '7.0.0-alpha1'
 - kubernetes_version: '1.16'
   upgrade_from_chart_version: '7.4.0'

But I think we can only fit this logic into the jenkins job inline shell script, or the Makefile inline shell script the way the job axes work, so adding into the Makefile makes sense to me.

Conky5
Conky5 previously approved these changes May 29, 2020
Copy link
Contributor

@Conky5 Conky5 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, I have concerns about the lack of error handling in the new shell snippets, but those could be addressed in another PR, the logic will work in the happy-path and get us testing on 1.16.

Conky5
Conky5 previously approved these changes May 29, 2020
Copy link
Contributor

@Conky5 Conky5 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jmlrt
Copy link
Member Author

jmlrt commented May 29, 2020

jenkins test this please

@jmlrt jmlrt requested a review from Conky5 May 29, 2020 21:47
Copy link
Contributor

@Conky5 Conky5 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jmlrt jmlrt merged commit acb4f51 into elastic:master May 29, 2020
@jmlrt jmlrt deleted the k8s-116 branch May 29, 2020 22:05
jmlrt added a commit that referenced this pull request May 29, 2020
* add CI tests for GKE 1.16
* add jq to Docker image
jmlrt added a commit that referenced this pull request May 29, 2020
* add CI tests for GKE 1.16
* test Elasticsearch upgrade from 7.4.0 on K8S 1.16 due to previous version of Elasticsearch chart not compatible with K8S 1.16 (see #635 (comment))
* move Elasticsearch upgrade test logic to dedicated shell script to improve error handling
* add jq to Docker image
jmlrt added a commit that referenced this pull request May 29, 2020
* add CI tests for GKE 1.16
* test Elasticsearch upgrade from 7.4.0 on K8S 1.16 due to previous version of Elasticsearch chart not compatible with K8S 1.16 (see #635 (comment))
* move Elasticsearch upgrade test logic to dedicated shell script to improve error handling
* add jq to Docker image
@jmlrt
Copy link
Member Author

jmlrt commented May 29, 2020

backported to 6.8, 7.7and 7.x branches

@jmlrt jmlrt mentioned this pull request Oct 28, 2020
This was referenced Nov 17, 2020
@jmlrt jmlrt mentioned this pull request Feb 8, 2021
This was referenced Mar 15, 2021
@jmlrt jmlrt mentioned this pull request May 25, 2021
@jmlrt jmlrt mentioned this pull request Mar 8, 2022
@jmlrt jmlrt mentioned this pull request Apr 21, 2022
This was referenced Sep 14, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants